// components/s-selector-menu/s-selector-menu.ts
var myBehavior = require('./my-behavior')
Component({
  behaviors: [myBehavior],
  options: {
    addGlobalClass: true,
    multipleSlots: true
  },
  relations: {
    "../s-selector/s-selector": {
      type: 'child',
      target: myBehavior,
      linked: function (target) {
        // 每次有custom-li被插入时执行，target是该节点实例对象，触发在该节点attached生命周期之后
        // console.log(target, "menu-target")
      },
      linkChanged: function (target) {
        // 每次有custom-li被移动后执行，target是该节点实例对象，触发在该节点moved生命周期之后
      },
      unlinked: function (target) {
        // 每次有custom-li被移除时执行，target是该节点实例对象，触发在该节点detached生命周期之后
      }
    }
  },
  /**
   * 组件的属性列表
   */
  properties: {

  },
  /**
   * 组件的初始数据
   */
  data: {
    app: getApp()
  },

  /**
   * 组件的方法列表
   */
  methods: {
    updateData() {
      // 触发子组件事件
      this.getChildren()
    },
    getChildren: function () {
      // 使用getRelationNodes可以获得nodes数组，包含所有已关联的child，且是有序的
      var nodes = this.getRelationNodes('../s-selector/s-selector')
      nodes.forEach((node: any) => {
        if (node.data.key !== this.data.currentKey) {
          node.toggleClose();
        }
      })
    }
  },
  ready: function () {

  }
})